﻿
\chapter{示例}
\section{画图示例1}
\subsection{表格反序}
CAD里面有一个表格，有多行多列。第一列是序号，按升序排序。现在要把这个表
格按第一列降序排序。有好几种做法。\textbf{第一种做法}：手工移动，有几行
就要移动几次。这种做法可以说是效率最低的一种方法。\textbf{第二种做法}：
把数据导出到Excel表中，使用它的排序功能，再导回到CAD里面。这种做法需要
自己编程，效率也不太高。前面说过，能够使用现成的命令绝不编程。
\textbf{第三种做法}：使用镜像命令把这个表格上下镜像一下。无论这个表格
有多少行，只需要一个命令就完成了，效率最高。

\subsection{炸开CAD的尺寸标注}
图形中都会有很多尺寸标注，有时候会想把它们都炸开。因为只有炸开，这些尺
寸才是安全的。因为当你把你的图传给别人的时候，因为CAD某些设置的问题可能
导致尺寸标注某些变化。所以把它炸开是最安全的。图中有一堆尺寸标注，怎么
炸开才能最快？\midpar

有的人可能会一个一个选中标注，然后把它炸开。这种做法是最慢的一种做法了。
要快一点，可以使用‘fi’命令，对象过滤器选择标注。使用这种过滤器可以一
下子过滤图纸中所有的尺寸标注，然后一次性的把它们炸开。\midpar

炸开后的文字变成了多行文字。除了写说明的时候我喜欢用多行文字，其它我都
喜欢用单行文字。所以接下来再把多行文字炸成单行文字。依然使用‘fi’命令，
选择“文字”，一次性的炸开。

\subsection{删除基础平面图中的条基}
如下图所示的一个基础平面图，里面有独立基础和条形基础。现在想把其中的条
形基础删除掉，只保留其中的独立基础，怎么可以更快一点？
\begin{center}
\includegraphics[width=0.9\textwidth]{jpg/p1_15.jpg}
\end{center}
其实画图不单是练你的一阳指，用鼠标点啊点，看谁点的快。出指快并不是真的
快，把事情在最短的时间内做完才是真的快。所以画图也需要动脑子。最慢的方
法就是一个一个选中线条，然后删除掉了。如果条形基础位于它自己的图层上，
就可以使用图层工具来选择并删除它，这样就快得多。但是如果条形基础根本和
其它图层混在一起，无法使用图层工具，怎么办呢？有一个稍快一点的办法，就
是把轴线图层锁定，然后可以框选条形基础几次，就可以删掉了。\midpar

如果轴线也和条形基础在一个图层中，那么上面的方法也不好使了。要想画图快，
图形的组织必须有条理。不同的图形应该放在不同的图层里，需要设置颜色的要
设置好颜色。图形越有条理，画起来也就越快。

\subsection{柱子实心填充}
框架结构的初步设计中，要将柱子实心填充，以表示这是一个柱子。下面依次说
明几种做法，绘图的速度从慢到快。\textbf{第一种做法}，一个柱子一个柱子的
填充。速度最慢。经常柱子还会被轴线分成四部分，那么一个柱子都要填充四次。
慢的不能再慢了。\textbf{第二种做法}，运用图层选择工具，把柱子移动到空白
的地方，一次性的填充，再把填充好的柱子移动到原来的位置。速度比第一种方
法快多了。\textbf{第三种方法}，利用图层管理工具，比如天正的“关闭其它”
命令。首先选中柱子，然后点击天正的这个命令，这样图中只有柱子的图层是显
示出来的。一下子填充就可以了。还省去了移动柱子的步骤。这是最快的。不过
这么做有一个小问题，就是你填充后发现柱子并没有被填充上。其实已经填充上
了，只是因为其它图层都被关闭了，所以显示不出来。填充完毕后只要把图层全
部打开就可以看到填充的图案了。\midpar

我曾经有一次填充柱子，一个框架结构，足足填充了半个多小时才填充完。累得
头晕眼花，手忙脚乱。第二天就想到了一个快得多的方法。就是上面的第二种方
法。这时我才想到，使用CAD应该讲究一些技巧了，不能总是用蛮力。上面第三种
方法是最快的，但是有一点，就是一个图一个图的填充，不要全部一块填充。因
为这样填充的柱子是一个整体。


\subsection{计算面积}
下面的内容来自于cadking的一篇文章。他论述了CAD中的有效操作。下面是内容。
有一个问题，计算下面图中的建筑密度。就是计算出里面的小多边形的面积之和，
再除以外边的多边形的面积。
\begin{center}
\includegraphics[width=0.75\textwidth]{jpg/p1_16.jpg}
\end{center}
cadking说有很多种做法，效率各不相同。第一种做法，用‘area’命令一个一个
的计算出每个小多边形的面积。过程中要选择每个多边形的每个角点。把每个多
边形的面积记在纸上，最后自己加。计算完后除以外边的多边形的面积。效率极
低。\midpar

第二种做法，如果知道封闭多段线的面积可以使用‘area’的‘object’选项来
获取，不用一个个角点来点。于是可以使用‘area’命令获得每个多段线的面积，
再把每个面积输入到excel中计算。速度快多了。\midpar

第三种做法，可以使用‘list’命令来得到所有多段线的面积。然后相加。效率
还可以，也不是很快。\midpar

第四种做法，使用‘area’的“加模式”来计算每个小多边形的面积。比前面的
做法都要更快一些。\midpar

第五种做法，有人收集了一些程序，可以批量标注多段线面积，然后有用一个程
序来累加所有的面积。因为有合适的程序，所以做得更快了。\midpar

第六种做法，先用‘hatch’命令填充外面多边形所包围的部分，不包括里面的那
些孤岛。然后用‘list’命令查看填充的面积。再除以最外面多边形的面积，就
得到了一个小于1的数，再用1减去这个数就是所有孤岛的面积除以边框的面积。
这种做法对于完成这个任务速度最快。\midpar

可以看出不同做法的效率是天差地远的。绘图速度的快慢并不是单看谁点鼠标更
快，即使你的手指点得能像打点计时器一样快，效率也不一定高，反而很可能把
手指累坏。所以画图讲究思路。就像一个程序的算法一样。一般情况下，C语言比
BASIC语言要快，但是如果C语言使用了一种很烂的算法编制一个程序，BASIC语言
则使用了一种高效的算法编制程序，那么BASIC同样能够胜过C语言。所以绘图的
快慢主要在于算法和思路，而不是出指的快慢。

\subsection{标注}
如果有一个图形，有几十根轴线。要把这些轴线之间的间距标出来，怎么最快？
如果有天正的话，可以使用“两点标注”和“双线标注”这两个命令。不使用天
正的话，可以使用~AutoCAD~的“QDIM（快速标注）”命令。都可以一下子把所有
的轴线的尺寸都标出来。\midpar

标注天正的门窗尺寸。（1）可以使用CAD最原始的标注方法，很慢。（2）使用天
正的“逐点标注”命令，速度也不算快。（2）使用天正的“快速标注”命令，可
以一下子把天正的对象，包括墙段和上面的窗户的尺寸都标出来。\midpar

标注分尺寸与总尺寸。比如一个泵基础平面图，要标注细部尺寸和总尺寸，这样
的需求是很常见的。（1）可以使用CAD的标注，速度很慢。（2）采用天正的“双
线标注”命令速度最快。此命令只对单线条起作用，对矩形这样的多段线不起作
用。\midpar

下面的标注，有三个需求。要求标注天正的（a）门窗、墙段尺寸；（b）轴线尺
寸；（c）总尺寸。\textbf{第一种方法}：（1）使用天正的“快速标注”命令标
注墙段、门窗的细部尺寸；（2）使用CAD的“快速标注”命令来标注轴线尺寸；
（3）标注总尺寸，随便使用什么命令。也就是说，目前完成这个任务可以使用三
个命令来完成。无论建筑物有多长，有多少个墙段，有多少个门窗，都可以只用
三个命令完成。美中不足的是，第一步中的标注使用的是天正命令，后面两步使
用的是CAD的命令，看起来不太一致。\textbf{第二种方法}：（1）使用天正的
“轴网标注”的命令标注轴线尺寸，总尺寸，轴线号；（2）使用天正的“快速标
注”标注墙段和门窗的尺寸。这种做法只需要两个命令，比第一种方法更快，而
且标注方式统一，都是天正的标注。同时还标注好了轴线号。

\subsection{数字递增}
一般情况下我很少用到这样的功能，倒是做道路的有时候会用到。如果道路比较
长的话，他们有时候出A3的图可以达到几百张。这时候仅仅图框的编号就是个麻
烦事。仅是改图纸的编号就会花费很长时间，还很累人。这个最好使用程序来实
现。


\subsection{计算多个建筑物的外墙面积}
有一次碰到这样一个问题，要计算一个小区里面所有建筑物的外墙面积。这个问
题大致等价于计算所有建筑物平面的周长。外墙面积是周长乘以建筑物的高度。
所以如何快速的计算周长就是要解决的问题。我从总图中复制了建筑物的线框图，
其它的东西都不要。这样方便进行相关计算。下面就是要计算建筑物的周长。
\midpar

这个问题有好几种处理方法。第一种可以想到的就是编个程序，让程序计算所有
单线条的长度。这就是建筑物的周长。但是为了这个不常见的问题而专门编一个
程序显得有点不值得。所以虽然可行，但是我不想这样做。\midpar

另一种方法是使用多段线。目的就是把建筑物的线框图的单线条都变成封闭的多
段线。用一个矩形圈住所有建筑物，使用“bo”命令，孤岛检测，等等操作，每个
建筑物的单线条都变成了多段线。生成的多段线都放在了当前图层上了。这个特
性可以加以利用。\midpar

现在把多段线都复制到另一个空白区域，使用图层来区别。如果不使用特定程序
的话，还是使用“list”命令把信息输出，写到Excel里面计算。这样不算太快，
也不算太慢。使用特定的程序是最快的。

